<?php
//*********************************** 
//Universal Media Publishing Platform
//Index page
//*********************************** 
$num = 10; //число постов на странице
if (isset($_GET['page'])) $page = $_GET['page']; 
else $page = 1;
$show = "all"; //определяет какие новости показывать
$message = "";
$page2left='';
$page1left='';
$page2right='';
$page1right='';
$nextpage='';
$pervpage='';
//Подключение необходимых файлов
require_once "config.php";
require_once "engine/login.php";
require_once "engine/sort.php";
require_once "engine/func.php";

//Проверка условий из $GET
if (isset($_GET['album'])){//Все треки альбома
    $alid = $_GET['album'];
	$show = "album";
}

if (isset($_GET['author'])){//Все посты автора
    $author = $_GET['author'];
    $show = "author";
}

if (isset($_GET['category'])){//Все посты категории
    $caturl = $_GET['category'];
    $show = "category";
}

if (isset($_GET['artist'])){//Все треки исполнителя
    $artist = $_GET['artist'];
    $show = "artist";
}

if (isset($_GET['genre'])){//Все треки жанра
    $genre = $_GET['genre'];
    $show = "genre";
}

if (isset($_GET['year'])){//Все треки за год
    $year = $_GET['year'];
    $show = "year";
}

//Считывание категорий из БД
$query = "SELECT * FROM category ORDER BY caid ";
$result1 = mysql_query($query);
while($row1 = mysql_fetch_array($result1)){
   $f[] =$row1;
}
for ($x = 0; $x < count($f); $x++) {
    $category[$f[$x]["caid"]] = $f[$x];
}

//Считывание альбомов из БД    
$query = "SELECT * FROM albums ORDER BY alid ";
$res = mysql_query($query);
while($row = mysql_fetch_array($res)){
   $albums[] =$row;
}

//Обработка $Show
switch ($show) {
//Все посты категории
    case "category":
	$cat[0]["caid"]=0;
	$cat[0]["information"]="";
		$query = "SELECT * FROM category WHERE url='".$caturl."' ORDER BY url ";//Делаем запрос, чтобы получить caid из url
		$res = mysql_query($query);
		while($row = mysql_fetch_array($res)){
			$cat[0] =$row;
		}
		$pager = mysql_query("SELECT COUNT(*) FROM news WHERE cat='".$cat[0]["caid"]."'");
		pagenfo($pager);
		$mainquery = "SELECT * FROM news WHERE cat='".$cat[0]["caid"]."' ORDER BY $sorting $st LIMIT $start, $num";//Запрашиваем посты категории
		$message = $cat[0]["information"];//Выводим информацию о категории
		$purl = $addr.'/category/'.$caturl;
		if (!$cat[0]["caid"]==0){
		$editcat = '<a href="'.$addr.'/edit.php?type=category&id='.$cat[0]["caid"].'">[редактировать]</a>';
		}
		$datype = "category";
	break;
		
//Все посты автора
    case "author":
		$pager = mysql_query("SELECT COUNT(*) FROM news WHERE author='".$author."'");
		pagenfo($pager);
        $mainquery = "SELECT * FROM news WHERE author='".$author."' ORDER BY $sorting $st LIMIT $start, $num";//Запрашиваем посты автора
		$message = "Все новости автора ".$author;//Выводим информацию
		$purl = $addr.'/show/author/'.$author;
		$datype = "byAuthor";
    break;
		
//Все треки альбома		
    case "album":
	$alb[0]["title"]="";
		$query = "SELECT * FROM albums WHERE alid='".$alid."' ORDER BY url ";//Делаем запрос, чтобы получить title из alid
			$res = mysql_query($query);
			while($row = mysql_fetch_array($res)){
				$alb[0] =$row;
			}
		$pager = mysql_query("SELECT COUNT(*) FROM news WHERE alid='".$alid."'");
		pagenfo($pager);
        $mainquery = "SELECT * FROM news WHERE alid='".$alid."' ORDER BY $sorting $st LIMIT $start, $num";//Запрашиваем треки из альбома
		$message = "Все треки из альбома ".$alb[0]["title"];
		$purl = $addr.'/show/album/'.$alid;
		$datype = "byAlbum";
	break;
	
//Все треки исполнителя		
    case "artist":
		$art[0]["name"]="";
		$query = "SELECT * FROM artist WHERE url='".$artist."' ORDER BY url ";//Делаем запрос, чтобы получить name из url
			$res = mysql_query($query);
			while($row = mysql_fetch_array($res)){
				$art[0] =$row;
			}
		$pager = mysql_query("SELECT COUNT(*) FROM news WHERE artist='".$art[0]["name"]."'");
		pagenfo($pager);	
        $mainquery = "SELECT * FROM news WHERE artist='".$art[0]["name"]."' ORDER BY $sorting $st LIMIT $start, $num";//Запрашиваем треки исполнителя
		$message = "Все треки иcполнителя ".$art[0]["name"];
		$purl = $addr.'/show/artist/'.$artist;
		$datype = "byArtist";
    break;

//Все треки жанра	
    case "genre":
		$pager = mysql_query("SELECT COUNT(*) FROM news WHERE genre='".$genre."'");
		pagenfo($pager);
        $mainquery = "SELECT * FROM news WHERE genre='".$genre."' ORDER BY $sorting $st LIMIT $start, $num";
		$message = "Все треки жанра ".$genre;
		$purl = $addr.'/show/genre/'.$genre;
		$datype = "byGenre";
    break;
	
//Все треки за год		
    case "year":
		$pager = mysql_query("SELECT COUNT(*) FROM news WHERE year='".$year."'"); 
		pagenfo($pager);  
        $mainquery = "SELECT * FROM news WHERE year='".$year."' ORDER BY $sorting $st LIMIT $start, $num";
		$message = "Все треки ".$year." года";
		$purl = $addr.'/show/year/'.$year;
		$datype = "byYear";
    break;
	
//Все новости главной страницы	
    case "all":
		$pager = mysql_query("SELECT COUNT(*) FROM news WHERE onmain='1'"); 
		pagenfo($pager); 
        $mainquery = "SELECT * FROM news WHERE onmain='1' ORDER BY $sorting $st LIMIT $start, $num";
		$purl = $addr.'/show/main';
		$datype = "index";
    break;
    default:
        $pager = mysql_query("SELECT COUNT(*) FROM news WHERE onmain='1'"); 
		pagenfo($pager); 
        $mainquery = "SELECT * FROM news WHERE onmain='1' ORDER BY $sorting $st LIMIT $start, $num";
		$purl = $addr.'/show/main';
		$datype = "index";
    break;
}

//Обработка запроса
$qrex = mysql_query($mainquery);
while($row = mysql_fetch_array($qrex)){
    $news[]=$row;
} 

require 'engine/meta.php'; //Подключаем обработчик мета тегов

if(mysql_num_rows($qrex) > 0){//Если новости найдены
	$message = $settings["description"]."<br />".$message;//Добавляем описание сайта
	require 'template/'.$tpl.'/mainu.tpl';
    for ($i = 0; $i < count($news); $i++){
        if($news[$i]["type"] == "post") require 'template/'.$tpl.'/shortnews.tpl';//Если новость выводим шаблон новости
        else if($news[$i]["type"] == "track") require 'template/'.$tpl.'/shorttrack.tpl';//Иначе шаблон трека
    }
}
else{//Если новости не найдены
	$datype = "index";
	$message ="По запросу ничего не найдено";
	require 'template/'.$tpl.'/mainu.tpl';
}

// Проверяем нужны ли стрелки назад
if ($page != 1){ 
	$pervpage = '<a href="'.$purl.'/p=1';
	if(isset($_GET["sort"])){ 
		$pervpage = $pervpage.'/by-'.$_GET["sort"];
		if(isset($_GET["st"])) $pervpage = $pervpage.'-'.$_GET["st"]; 
	}
	$pervpage = $pervpage.'"><<</a>';
	$pervpage = $pervpage.'<a href="'.$purl.'/p='. ($page - 1);
	if(isset($_GET["sort"])){ 
		$pervpage = $pervpage.'/by-'.$_GET["sort"];
		if(isset($_GET["st"])) $pervpage = $pervpage.'-'.$_GET["st"]; 
	}
	$pervpage = $pervpage.'"><</a> ';
}	
						   
// Проверяем нужны ли стрелки вперед 
if ($page != $total){ 
	$nextpage = ' <a href="'.$purl.'/p='. ($page + 1);
	if(isset($_GET["sort"])){ 
		$nextpage = $nextpage.'/by-'.$_GET["sort"];
		if(isset($_GET["st"])) $nextpage = $nextpage.'-'.$_GET["st"]; 
	}
	$nextpage = $nextpage.'">></a>'; 
	$nextpage = $nextpage.'<a href="'.$purl.'/p=' .$total;
	if(isset($_GET["sort"])){ 
		$nextpage = $nextpage.'/by-'.$_GET["sort"];
		if(isset($_GET["st"])) $nextpage = $nextpage.'-'.$_GET["st"];
	}
	$nextpage = $nextpage. '">>></a>'; 
}

// Находим две ближайшие станицы с обоих краев, если они есть 
if($page - 2 > 0){
	$page2left = '<a href="'.$purl.'/p='. ($page - 2);
	if(isset($_GET["sort"])){ 
		$page2left = $page2left.'/by-'.$_GET["sort"];
		if(isset($_GET["st"])) $page2left = $page2left.'-'.$_GET["st"]; 
	}
	$page2left = $page2left.'">'. ($page - 2) .'</a> | '; 
}

if($page - 1 > 0){ 
	$page1left = '<a href="'.$purl.'/p='. ($page - 1);
	if(isset($_GET["sort"])){ 
		$page1left = $page1left.'/by-'.$_GET["sort"];
		if(isset($_GET["st"])) $page1left = $page1left.'-'.$_GET["st"]; 
	}	
	$page1left = $page1left.'">'. ($page - 1) .'</a> | '; 
}

if($page + 2 <= $total){ 
	$page2right = ' | <a href="'.$purl.'/p='. ($page + 2);
	if(isset($_GET["sort"])){ 
		$page2right = $page2right.'/by-'.$_GET["sort"];
		if(isset($_GET["st"])) $page2right = $page2right.'-'.$_GET["st"];
	} 
	$page2right = $page2right.'">'. ($page + 2) .'</a>'; 
}

if($page + 1 <= $total){ 
	$page1right = ' | <a href="'.$purl.'/p='. ($page + 1);
	if(isset($_GET["sort"])){ 
		$page1right = $page1right.'/by-'.$_GET["sort"];
		if(isset($_GET["st"])) $page1right = $page1right.'-'.$_GET["st"];
	} 
	$page1right = $page1right.'">'. ($page + 1) .'</a>';
}

// Вывод меню 
if ($total>1){
	echo $pervpage.$page2left.$page1left.'<b>'.$page.'</b>'.$page1right.$page2right.$nextpage.' показана '.$page.' страница из '.$total;
} 

require 'template/'.$tpl.'/maind.tpl';
?>
            
